/**
 * Copyright 2010 - YangJiandong(chunquedong)
 * 
 * This file is part of ChunMap project
 * Licensed under the GNU LESSER GENERAL PUBLIC LICENSE(Version >=3)
 * 
 * ChunMap是开源软件。你可以自由复制、传播本项目的下载包文件，但必须保持其完整性。
 * 我们不用对使用中的风险及由此造成的损失承担任何责任。
 * 详细情况请见《ChunMap许可协议》。
 * 
 * 想了解更多有关ChunMap的信息，请访问http://code.google.com/p/chunmap/
 * 
 * 下面此段程序作者YangJianDong(chunquedong)
 * 最后修改时间2010.7.17
 */
package chunmap.raster.gmap;

import java.awt.Image;
import java.util.List;

import chunmap.model.crs.proj.Mercator;
import chunmap.model.elem.Envelope;
import chunmap.raster.Tile;

public class GMDataSource {
	private static Envelope envelope = new Envelope(-Mercator.maxDis
            , -Mercator.maxDis, Mercator.maxDis, Mercator.maxDis);
	
        protected GoogleMapCode code = new GoogleMapCode();
        protected GMConnection conn=new GMConnection();

        //瓦片的大小
        public Envelope getEnvelope(Tile tile)
        {
            return code.getEnvelope(tile);
        }
        
        public Image getImage(GMTile tile_)
        {
        	return conn.getImage(tile_);
        }

        //查找要显示的Tile
        public List<GMTile> getTileSet(Envelope envelope, double scale)
        {
            List<GMTile> list= code.getTileSet(envelope, scale);
            for (GMTile t : list)
            {
                t.setDataSource(this);
            }
            return list;
        }

        public Envelope getEnvelop()
        {
            return envelope;
        }
}
